//提升帮派规模
// @ts-ignore
export async function execute(client_id,message_json) {
    let characters = G.Characters.get_current_login_characters(client_id);
    let gang_data = _GangDataCache.get(characters["BPID"]);
    if (gang_data["成员数据"][characters["id"]]["权限"] < 4) {
        ClientUtils.send_basic_prompt(client_id, "你没有权限执行此操作");
        return;
    }
    let level = gang_data["帮派规模"];
    if (level >= 7) {
        ClientUtils.send_basic_prompt(client_id, "Y帮派已经达到了顶级。");
        return;
    }
    let check_res = G.GangUtils.check_gang_level_up(gang_data["帮派编号"]);
    if (!check_res[0]) {
        ClientUtils.send_basic_prompt(client_id, `#Y帮派当前等级升级要求帮派2种建筑物达到${G.GangUtils.gang_level_up_conditions[gang_data["帮派规模"]][0]}个`);
        return;
    }
    if (!check_res[1]) {
        ClientUtils.send_basic_prompt(client_id, `#Y帮派当前等级升级要求帮派资金≥${G.GangUtils.gang_level_up_conditions[gang_data["帮派规模"]][1] / 10000}万`);
        return;
    }
    gang_data["帮派规模"] += 1;
    switch (level) {
        case 2:
            gang_data["帮派资材"]["上限"] = 7000;
            gang_data["帮派资金"]["上限"] = 100000000 + (gang_data["帮派建筑"]["金库"]["数量"] * 1000000);
            gang_data["当前维护费"] = 200000;
            gang_data["成员数量"]["上限"] = 100;
            break;
        case 3:
            gang_data["帮派资材"]["上限"] = 8000;
            gang_data["帮派资金"]["上限"] = 200000000 + (gang_data["帮派建筑"]["金库"]["数量"] * 1000000);
            gang_data["当前维护费"] = 300000;
            gang_data["成员数量"]["上限"] = 150;
            break;
        case 4:
            gang_data["帮派资材"]["上限"] = 9000;
            gang_data["帮派资金"]["上限"] = 300000000 + (gang_data["帮派建筑"]["金库"]["数量"] * 1000000);
            gang_data["当前维护费"] = 400000;
            gang_data["成员数量"]["上限"] = 200;
            break;
        case 5:
            gang_data["帮派资材"]["上限"] = 10000;
            gang_data["帮派资金"]["上限"] = 400000000 + (gang_data["帮派建筑"]["金库"]["数量"] * 1000000);
            gang_data["当前维护费"] = 500000;
            gang_data["成员数量"]["上限"] = 250;
            break;
        case 6:
            gang_data["帮派资材"]["上限"] = 12000;
            gang_data["帮派资金"]["上限"] = 400000000 + (gang_data["帮派建筑"]["金库"]["数量"] * 1000000);
            gang_data["当前维护费"] = 500000;
            gang_data["成员数量"]["上限"] = 300;
            break;
        case 7:
            gang_data["帮派资材"]["上限"] = 15000;
            gang_data["帮派资金"]["上限"] = 400000000 + (gang_data["帮派建筑"]["金库"]["数量"] * 1000000);
            gang_data["当前维护费"] = 500000;
            gang_data["成员数量"]["上限"] = 350;
            break;
        default:
            break;
    }

    ClientUtils.send_client_message(client_id, 208, {
        "帮派规模": gang_data["帮派规模"],
        "资材上限": gang_data["资材上限"],
        "帮派资金": gang_data["帮派资金"],
        "维护费": gang_data["维护费"],
        "成员上限": gang_data["成员上限"],
        "类型": "提升规模",
    });
    ClientUtils.send_basic_prompt(client_id, `#G帮派规模提升到了#R${level + 1}级`);
    G.GangUtils.notice_gang_chat(gang_data["帮派编号"], `[帮派总管]#G/ ${characters["名称"]} #W/将帮派规模提升到了#R${level + 1}级`);
}